function loadImg(src) {
  return new Promise((resolve, reject) => {
    const img = document.createElement("img");

    img.onload = () => {
      resolve(img);
    };

    img.onerror = () => {
      const err = new Error(`图片加载失败`);

      reject(err);
    };

    img.src = src;
  });
}

let src1 = ``;

let src2 = ``;

let result1 = loadImg(src1);

let result2 = loadImg(src2);

// promise.all 接收一个  promise 对象 的 数组
// 待全部完成之后，统一执行 success
Promise.all([result1, result2]).then((datas) => {
  // 接收到的 datas 是一个数组，依次包含了 多个 promise 返回的 内容
  console.log(datas[0]);
  console.log(datas[1]);
});

// Promise.race 接收一个包含多个 promise 对象的 数组
// 只要有一个完成，就执行 success
Promise.race([result1, result2]).then((data) => {
  // data 即最先执行完成 的 promise 的 返回值
  console.log(data);
});
